﻿using Bikiball.Core;
using SharpDX;
using SharpDX.Toolkit;
using SharpDX.Toolkit.Graphics;

namespace Bikiball.Graphic
{
    public class GraphicProperty : Property
    {

        #region Public Properties
        public Texture Texture { get; set; }
        public Effect Effect { get; set; }
        public Buffer VertexBuffer { get; set; }
        public VertexInputLayout InputLayout { get; set; }
        public int[] Indices = null;
        public Buffer IndexBuffer { get; set; }
        public int NumVertices { get; set; }
        public int NumIndices { get; set; }
        public int NumTriangles { get; set; }
        public PrimitiveType PrimitiveType { get; set; }
        public int VertexStride { get; set; }
   
        #endregion
        public GraphicProperty() : base()
        {
        }

        public void Dispose()
        {
            /*
            if (this.Effect != null)
                this.Effect.Dispose();
            if (this.VertexBuffer != null) 
                this.VertexBuffer.Dispose();
            if (this.IndexBuffer != null)
                this.IndexBuffer.Dispose();
            //this.IndexBuffer = Buffer.Index.New(*/
        }

        public virtual void Draw(Matrix World, Matrix View, Matrix Proj, GameTime GameTime)
        {
        }

        public override void PropInit(Core.Property property)
        {
            
        }
    }
}
